<?php
/**
 * 我的喜欢（我点赞的作品）
 */
require_once dirname(__DIR__)."/login_filter.php";
use app\cls\tom\Response;
use app\cls\tom\SysResource;
use app\cls\tom\Tools;
use app\model\Users;
$uuid=$Auth['uuid'];
//分页
$page = isset($_REQUEST["page"]) ? intval($_REQUEST["page"]) : 1;
$page = $page > 0 ? $page : 1;
$pageSize = 200;

//实例化数据库
$db = SysResource::getDB(false);
$Users = new Users($db);
//实例化redis
$redis = SysResource::getRedis();
$uid=sprintf("%d",crc32($uuid));
$key=REDIS_PREFIX."fabulous_".$uid;
//先去redis里查询我的点赞
//$da1=$redis->hKeys($key);
$da1='';
if(empty($da1)){
    //去用户点赞表查询用户的点赞
    $da1=$Users->my_zan($page,$pageSize,$uuid);
    //不为空，再去素材表查询该视频
    if(!empty($da1)){
        $da2=[];
        foreach($da1 as $k=>$v){
            $da2[]=$Users->my_love($v['video_uuid'],$v['other_id']);
        }
        //这里有查询条件的，所以后台操作了会有空数组，这一步是去除空数组
        $da2=array_filter($da2);
    }else{
        $da2=[];
    }
}else{
    //redis里的数据重新排序，存redis里的是先存的在前面，不能按时间降序
    $da3=[];
    $len=count($da1);
    foreach($da1 as $kkk=>$vvv){
        $da3[]=$da1[$len-1-$kkk];
    }
    //直接查询redis里的数据，但是不能按时间降序排序
    $da2=[];
    foreach($da3 as $k=>$v){
        $da2[]=$Users->my_love($v);
    }
    //这里有查询条件的，所以后台操作了会有空数组，这一步是去除空数组
    $da2=array_filter($da2);
}


//这一步是把数组键值重新排序，（如果有空数组，数组键值不是正常排序的）
$da4=[];
if(!empty($da2)){
    foreach ($da2 as $kk=>$vv){
        $vv['count_material_love_10']=round($vv['count_material_love']*1.7);
        if(empty($vv['share_pic'])){
            $vv['share_pic']="";
        }
        if(empty($vv['video_desc'])){
            $vv['video_desc']="";
        }
       $da4[]= $vv;
    }
    Response::output(0,"查询成功",$da4);
}else{
    Response::output(0,"查询成功",$da4);
}


